package com.panasonic.cn.cmsc;

import java.io.*;
import java.lang.*;
import java.util.*;
import java.math.*;
import java.sql.SQLException;
import com.fujitsu.fks.jaaf.core.*;

public class SQLMM0501{
	private Hashtable paramsString     = new Hashtable();
	private Hashtable paramsBigDecimal = new Hashtable();
	private Hashtable paramsFree       = new Hashtable();
	private String lastSql_ = null;

	private String getString(String name){
		if(name==null) return "";
		String returnStr = (String)paramsString.get(name);
		if(returnStr==null) return "";
		return "'"+FrameworkCommon.stringReplaceSQuote(returnStr)+"'";
	}

	private String getBigDecimal(String name){
		if(name==null) return "";
		BigDecimal returnStr = (BigDecimal)paramsBigDecimal.get(name);
		if(returnStr==null) return "";
		return returnStr.toString();
	}

	private String getFree(String name){
		if(name==null) return "";
		String returnStr = (String)paramsFree.get(name);
		if(returnStr==null) return "";
		return returnStr;
	}

	public String getLastSql(){
		return lastSql_;
	}

	public int INSERT_M0501(FrameworkDbCommon db) throws Exception {
		StringBuffer sql = new StringBuffer();
		sql.append("	    INSERT INTO M05(");
		sql.append("	    SLCP_CD,");
		sql.append("	    CUS_CD,");
		sql.append("	    ITM_NO,");
		sql.append("	    APL_BDT,");
		sql.append("	    APL_EDT,");
		sql.append("	    GNR_ADM_NO,");
		sql.append("	    SLS_PRIZ,");
		sql.append("	    CUS_PRC_TAB_CN,");
		sql.append("	    RGS_DTTM,");
		sql.append("	    RGS_CHRG_CD,");
		sql.append("	    RGS_PGID,");
		sql.append("	    UPD_DTTM,");
		sql.append("	    UPD_CHRG_CD,");
		sql.append("	    UPD_PGID,");
		sql.append("	    FM_TYP)");
		sql.append("	    VALUES(");
		sql.append("	    "+getString("SLCP_CD")+",");
		sql.append("	    "+getString("CUS_CD")+",");
		sql.append("	    "+getString("ITM_NO")+",");
		sql.append("	    "+getString("APL_BDT")+",");
		sql.append("	    "+getString("APL_EDT")+",");
		sql.append("	    "+getString("GNR_ADM_NO")+",");
		sql.append("	    "+getBigDecimal("SLS_PRIZ")+",");
		sql.append("	    "+getString("CUS_PRC_TAB_CN")+",");
		sql.append("	    TO_DATE("+getString("RGS_DTTM")+",'YYYYMMDD HH24:MI:SS'),");
		sql.append("	    "+getString("RGS_CHRG_CD")+",");
		sql.append("	    "+getString("RGS_PGID")+",");
		sql.append("	    TO_DATE("+getString("UPD_DTTM")+",'YYYYMMDD HH24:MI:SS'),");
		sql.append("	    "+getString("UPD_CHRG_CD")+",");
		sql.append("	    "+getString("UPD_PGID")+",");
		sql.append("	    "+getString("FM_TYP")+")");
		db.setSql(sql.toString());
		lastSql_ =sql.toString();
		int updateCount = db.executeUpdate();
		paramsString     = new Hashtable();
		paramsBigDecimal = new Hashtable();
		paramsFree       = new Hashtable();

		return updateCount;
	}

	public SelectResultRset SELECT_M0513(FrameworkDbCommon db) throws Exception {
		StringBuffer sql = new StringBuffer();
		sql.append("	SELECT SLCP_CD,");
		sql.append("	CUS_CD,");
		sql.append("	ITM_NO,");
		sql.append("	APL_BDT,");
		sql.append("	APL_EDT,");
		sql.append("	GNR_ADM_NO,");
		sql.append("	SLS_PRIZ,");
		sql.append("	CUS_PRC_TAB_CN,");
		sql.append("	TO_CHAR(RGS_DTTM,'YYYYMMDD HH24:MI:SS') AS RGS_DTTM,");
		sql.append("	RGS_CHRG_CD,");
		sql.append("	RGS_PGID,");
		sql.append("	TO_CHAR(UPD_DTTM,'YYYYMMDD HH24:MI:SS') AS UPD_DTTM,");
		sql.append("	UPD_CHRG_CD,");
		sql.append("	UPD_PGID");
		sql.append("	FROM M05 ");
		sql.append("	WHERE ");
		sql.append("	SLCP_CD"+((getString("SLCP_CD").equals(""))?" is null ":"=")+getString("SLCP_CD")+" ");
		sql.append("	AND CUS_CD"+((getString("CUS_CD").equals(""))?" is null ":"=")+getString("CUS_CD")+" ");
		sql.append("	AND ITM_NO"+((getString("ITM_NO").equals(""))?" is null ":"=")+getString("ITM_NO")+" ");
		sql.append("	AND APL_BDT"+((getString("APL_BDT").equals(""))?" is null ":"=")+getString("APL_BDT")+"");
		db.setSql(sql.toString());
		lastSql_ =sql.toString();
		SelectResultRset srr = db.executeQuery();
		paramsString     = new Hashtable();
		paramsBigDecimal = new Hashtable();
		paramsFree       = new Hashtable();

		return srr;
	}

	public SelectResultRset SELECT_M0514(FrameworkDbCommon db) throws Exception {
		StringBuffer sql = new StringBuffer();
		sql.append("	SELECT COUNT(*) AS COUNTS");
		sql.append("	FROM M05 ");
		sql.append("	WHERE ");
		sql.append("	SLCP_CD"+((getString("SLCP_CD").equals(""))?" is null ":"=")+getString("SLCP_CD")+" ");
		sql.append("	AND CUS_CD"+((getString("CUS_CD").equals(""))?" is null ":"=")+getString("CUS_CD")+" ");
		sql.append("	AND ITM_NO"+((getString("ITM_NO").equals(""))?" is null ":"=")+getString("ITM_NO")+" ");
		sql.append("	AND ((APL_BDT <"+((getString("APL_BDT").equals(""))?" is null ":"=")+getString("APL_BDT")+" AND APL_EDT >"+((getString("APL_BDT").equals(""))?" is null ":"=")+getString("APL_BDT")+")");
		sql.append("	     OR (APL_BDT <"+((getString("APL_EDT").equals(""))?" is null ":"=")+getString("APL_EDT")+" AND APL_EDT >"+((getString("APL_EDT").equals(""))?" is null ":"=")+getString("APL_EDT")+")");
		sql.append("	     OR (APL_BDT > "+getString("APL_BDT")+"))");
		db.setSql(sql.toString());
		lastSql_ =sql.toString();
		SelectResultRset srr = db.executeQuery();
		paramsString     = new Hashtable();
		paramsBigDecimal = new Hashtable();
		paramsFree       = new Hashtable();

		return srr;
	}

	public SelectResultRset SELECT_M0512(FrameworkDbCommon db) throws Exception {
		StringBuffer sql = new StringBuffer();
		sql.append("	SELECT FM_TYP");
		sql.append("	FROM M05");
		sql.append("	WHERE ");
		sql.append("	SLCP_CD "+((getString("SLCP_CD").equals(""))?" is null ":"=")+getString("SLCP_CD")+"");
		sql.append("	AND");
		sql.append("	CUS_CD "+((getString("CUS_CD").equals(""))?" is null ":"=")+getString("CUS_CD")+"");
		sql.append("	AND");
		sql.append("	ITM_NO "+((getString("ITM_NO").equals(""))?" is null ":"=")+getString("ITM_NO")+"");
		sql.append("	AND");
		sql.append("	FM_TYP "+((getString("FM_TYP").equals(""))?" is null ":"=")+getString("FM_TYP")+"");
		db.setSql(sql.toString());
		lastSql_ =sql.toString();
		SelectResultRset srr = db.executeQuery();
		paramsString     = new Hashtable();
		paramsBigDecimal = new Hashtable();
		paramsFree       = new Hashtable();

		return srr;
	}

	public int INSERT_BM0501(FrameworkDbCommon db) throws Exception {
		StringBuffer sql = new StringBuffer();
		sql.append("	INSERT INTO ");
		sql.append("	BM05(");
		sql.append("	SEQ_NO,	");
		sql.append("        SLCP_CD,");
		sql.append("        CUS_CD,");
		sql.append("	ITM_NO,");
		sql.append("	APL_BDT,");
		sql.append("	APL_EDT,");
		sql.append("	GNR_ADM_NO,");
		sql.append("	SLS_PRIZ,");
		sql.append("	CUS_PRC_TAB_CN,");
		sql.append("	RGS_DTTM,");
		sql.append("	RGS_CHRG_CD,");
		sql.append("	RGS_PGID,");
		sql.append("	UPD_DTTM,");
		sql.append("	UPD_CHRG_CD,");
		sql.append("	UPD_PGID,");
		sql.append("	FM_TYP)");
		sql.append("	SELECT	SEQ_BM05.NEXTVAL,");
		sql.append("        SLCP_CD,");
		sql.append("        CUS_CD,");
		sql.append("	ITM_NO,");
		sql.append("	APL_BDT,");
		sql.append("	APL_EDT,");
		sql.append("	GNR_ADM_NO,");
		sql.append("	SLS_PRIZ,");
		sql.append("	CUS_PRC_TAB_CN,");
		sql.append("	RGS_DTTM,");
		sql.append("	RGS_CHRG_CD,");
		sql.append("	RGS_PGID,");
		sql.append("	UPD_DTTM,");
		sql.append("	UPD_CHRG_CD,");
		sql.append("	UPD_PGID,");
		sql.append("	FM_TYP");
		sql.append("		FROM");
		sql.append("	M05");
		sql.append("	WHERE");
		sql.append("	SLCP_CD "+((getString("SLCP_CD").equals(""))?" is null ":"=")+getString("SLCP_CD")+"");
		sql.append("	AND");
		sql.append("	CUS_CD "+((getString("CUS_CD").equals(""))?" is null ":"=")+getString("CUS_CD")+"");
		sql.append("	AND");
		sql.append("	ITM_NO "+((getString("ITM_NO").equals(""))?" is null ":"=")+getString("ITM_NO")+"");
		sql.append("	AND");
		sql.append("	FM_TYP "+((getString("FM_TYP").equals(""))?" is null ":"=")+getString("FM_TYP")+"");
		db.setSql(sql.toString());
		lastSql_ =sql.toString();
		int updateCount = db.executeUpdate();
		paramsString     = new Hashtable();
		paramsBigDecimal = new Hashtable();
		paramsFree       = new Hashtable();

		return updateCount;
	}

	public int DELETE_M0501(FrameworkDbCommon db) throws Exception {
		StringBuffer sql = new StringBuffer();
		sql.append("	DELETE");
		sql.append("	M05");
		sql.append("	WHERE");
		sql.append("	SLCP_CD "+((getString("SLCP_CD").equals(""))?" is null ":"=")+getString("SLCP_CD")+"");
		sql.append("	AND");
		sql.append("	CUS_CD "+((getString("CUS_CD").equals(""))?" is null ":"=")+getString("CUS_CD")+"");
		sql.append("	AND");
		sql.append("	ITM_NO "+((getString("ITM_NO").equals(""))?" is null ":"=")+getString("ITM_NO")+"");
		sql.append("	AND ");
		sql.append("	FM_TYP "+((getString("FM_TYP").equals(""))?" is null ":"=")+getString("FM_TYP")+"");
		db.setSql(sql.toString());
		lastSql_ =sql.toString();
		int updateCount = db.executeUpdate();
		paramsString     = new Hashtable();
		paramsBigDecimal = new Hashtable();
		paramsFree       = new Hashtable();

		return updateCount;
	}

	public SelectResultRset SELECT_M0301(FrameworkDbCommon db) throws Exception {
		StringBuffer sql = new StringBuffer();
		sql.append("	SELECT ");
		sql.append("	COUNT(ITM_NO) AS COUNT");
		sql.append("	FROM");
		sql.append("	M03");
		sql.append("	WHERE");
		sql.append("	SLCP_CD "+((getString("SLCP_CD").equals(""))?" is null ":"=")+getString("SLCP_CD")+"");
		sql.append("	AND");
		sql.append("	ITM_NO "+((getString("ITM_NO").equals(""))?" is null ":"=")+getString("ITM_NO")+"");
		sql.append("	AND");
		sql.append("	APL_BDT <"+((getString("APL_BDT").equals(""))?" is null ":"=")+getString("APL_BDT")+"");
		sql.append("	AND ");
		sql.append("	FM_TYP <> "+getString("FM_TYP6")+"");
		sql.append("	AND ");
		sql.append("	FM_TYP <> "+getString("FM_TYP9")+"");
		db.setSql(sql.toString());
		lastSql_ =sql.toString();
		SelectResultRset srr = db.executeQuery();
		paramsString     = new Hashtable();
		paramsBigDecimal = new Hashtable();
		paramsFree       = new Hashtable();

		return srr;
	}

	public SelectResultRset SELECT_M0101(FrameworkDbCommon db) throws Exception {
		StringBuffer sql = new StringBuffer();
		sql.append("	SELECT");
		sql.append("	COUNT(VDR_CD) AS COUNT");
		sql.append("	FROM");
		sql.append("	M01");
		sql.append("	WHERE");
		sql.append("	VDR_CD "+((getString("VDR_CD").equals(""))?" is null ":"=")+getString("VDR_CD")+"");
		sql.append("	AND");
		sql.append("	CTRL_DVSN_CD "+((getString("CTRL_DVSN_CD").equals(""))?" is null ":"=")+getString("CTRL_DVSN_CD")+"");
		sql.append("	AND ");
		sql.append("	APL_BDT  <"+((getString("APL_BDT").equals(""))?" is null ":"=")+getString("APL_BDT")+"");
		sql.append("	AND");
		sql.append("	TRPT_CLSS_D_TYP "+((getString("TRPT_CLSS_D_TYP").equals(""))?" is null ":"=")+getString("TRPT_CLSS_D_TYP")+"");
		sql.append("	AND");
		sql.append("	FM_TYP <> "+getString("FM_TYP6")+"");
		sql.append("	AND");
		sql.append("	FM_TYP <> "+getString("FM_TYP9")+"");
		db.setSql(sql.toString());
		lastSql_ =sql.toString();
		SelectResultRset srr = db.executeQuery();
		paramsString     = new Hashtable();
		paramsBigDecimal = new Hashtable();
		paramsFree       = new Hashtable();

		return srr;
	}


	public void setSLCP_CD(String value){
		if(value==null) {
			paramsString.remove("SLCP_CD");
			return;
		}
		paramsString.put("SLCP_CD",value);
	}


	public void setCUS_CD(String value){
		if(value==null) {
			paramsString.remove("CUS_CD");
			return;
		}
		paramsString.put("CUS_CD",value);
	}


	public void setITM_NO(String value){
		if(value==null) {
			paramsString.remove("ITM_NO");
			return;
		}
		paramsString.put("ITM_NO",value);
	}


	public void setAPL_BDT(String value){
		if(value==null) {
			paramsString.remove("APL_BDT");
			return;
		}
		paramsString.put("APL_BDT",value);
	}


	public void setAPL_EDT(String value){
		if(value==null) {
			paramsString.remove("APL_EDT");
			return;
		}
		paramsString.put("APL_EDT",value);
	}


	public void setGNR_ADM_NO(String value){
		if(value==null) {
			paramsString.remove("GNR_ADM_NO");
			return;
		}
		paramsString.put("GNR_ADM_NO",value);
	}


	public void setCUS_PRC_TAB_CN(String value){
		if(value==null) {
			paramsString.remove("CUS_PRC_TAB_CN");
			return;
		}
		paramsString.put("CUS_PRC_TAB_CN",value);
	}


	public void setRGS_DTTM(String value){
		if(value==null) {
			paramsString.remove("RGS_DTTM");
			return;
		}
		paramsString.put("RGS_DTTM",value);
	}


	public void setRGS_CHRG_CD(String value){
		if(value==null) {
			paramsString.remove("RGS_CHRG_CD");
			return;
		}
		paramsString.put("RGS_CHRG_CD",value);
	}


	public void setRGS_PGID(String value){
		if(value==null) {
			paramsString.remove("RGS_PGID");
			return;
		}
		paramsString.put("RGS_PGID",value);
	}


	public void setUPD_DTTM(String value){
		if(value==null) {
			paramsString.remove("UPD_DTTM");
			return;
		}
		paramsString.put("UPD_DTTM",value);
	}


	public void setUPD_CHRG_CD(String value){
		if(value==null) {
			paramsString.remove("UPD_CHRG_CD");
			return;
		}
		paramsString.put("UPD_CHRG_CD",value);
	}


	public void setUPD_PGID(String value){
		if(value==null) {
			paramsString.remove("UPD_PGID");
			return;
		}
		paramsString.put("UPD_PGID",value);
	}


	public void setFM_TYP(String value){
		if(value==null) {
			paramsString.remove("FM_TYP");
			return;
		}
		paramsString.put("FM_TYP",value);
	}


	public void setFM_TYP6(String value){
		if(value==null) {
			paramsString.remove("FM_TYP6");
			return;
		}
		paramsString.put("FM_TYP6",value);
	}


	public void setFM_TYP9(String value){
		if(value==null) {
			paramsString.remove("FM_TYP9");
			return;
		}
		paramsString.put("FM_TYP9",value);
	}


	public void setVDR_CD(String value){
		if(value==null) {
			paramsString.remove("VDR_CD");
			return;
		}
		paramsString.put("VDR_CD",value);
	}


	public void setCTRL_DVSN_CD(String value){
		if(value==null) {
			paramsString.remove("CTRL_DVSN_CD");
			return;
		}
		paramsString.put("CTRL_DVSN_CD",value);
	}


	public void setTRPT_CLSS_D_TYP(String value){
		if(value==null) {
			paramsString.remove("TRPT_CLSS_D_TYP");
			return;
		}
		paramsString.put("TRPT_CLSS_D_TYP",value);
	}


	public void setSLS_PRIZ(BigDecimal value){
		if(value==null) {
			paramsBigDecimal.remove("SLS_PRIZ");
			return;
		}
		paramsBigDecimal.put("SLS_PRIZ",value);
	}


}
